﻿<metro:Window x:Class="Elysium.SDK.MSI.UI.MainView"
              xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
              xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
              xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
              xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
              xmlns:metro="http://schemas.codeplex.com/elysium"
              xmlns:params="http://schemas.codeplex.com/elysium/params"
              xmlns:designmode="clr-namespace:Elysium.SDK.MSI.UI.Design"
              xmlns:converters="clr-namespace:Elysium.SDK.MSI.UI.Converters"
              xmlns:viewmodels="clr-namespace:Elysium.SDK.MSI.UI.ViewModels"
              xmlns:properties="clr-namespace:Elysium.SDK.MSI.UI.Properties"
              mc:Ignorable="d"
              params:Manager.Theme="Dark"
              params:Manager.AccentBrush="{x:Static metro:AccentBrushes.Blue}"
              params:Manager.ContrastBrush="White"
              DataContext="{Binding Source={x:Static viewmodels:Locator.MainViewModel}}"
              Background="{DynamicResource BackgroundBrush}"
              Closed="MainViewClosed"
              ResizeMode="CanMinimize"
              Width="450" Height="550">
    <Grid>
        <Grid.Resources>
            <converters:BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/>
            <converters:ScreenToVisibilityConverter x:Key="ScreenToVisibilityConverter"/>
            <converters:FeatureIDToFeatureTitleConverter x:Key="FeatureIDToFeatureTitleConverter"/>
            <Style TargetType="{x:Type TextBlock}">
                <Setter Property="TextWrapping" Value="Wrap"/>
            </Style>
        </Grid.Resources>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
        <Image Grid.Row="0"
               Source="/UI;component/Resources/Installation logo.png"
               Stretch="Uniform"
               RenderOptions.BitmapScalingMode="Fant"
               Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
               VerticalAlignment="Top"/>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Initializing}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="7*"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <metro:ProgressBar Grid.Column="1"
                               State="Busy"
                               Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                               VerticalAlignment="Center"/>
        </Grid>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Help}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="0.5*"/>
                <ColumnDefinition Width="2*"/>
                <ColumnDefinition Width="6*"/>
                <ColumnDefinition Width="0.5*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
            </Grid.RowDefinitions>
            <Grid.Resources>
                <Style TargetType="{x:Type TextBlock}">
                    <Setter Property="Foreground" Value="{DynamicResource ForegroundBrush}"/>
                    <Setter Property="TextWrapping" Value="Wrap"/>
                    <Setter Property="Margin" Value="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.SemiBoldPadding)}"/>
                </Style>
            </Grid.Resources>
            <TextBlock Grid.Column="1" Grid.ColumnSpan="2" Grid.Row="0"
                       Text="{x:Static properties:Resources.HelpTitle}"/>
            <TextBlock Grid.Column="1" Grid.Row="1"
                       Text="/? /h /help"/>
            <TextBlock Grid.Column="2" Grid.Row="1"
                       Text="{x:Static properties:Resources.HelpHelp}"/>
            <TextBlock Grid.Column="1" Grid.Row="2">
                /l &lt;filename&gt;
                <LineBreak/>
                /log &lt;filename&gt;
            </TextBlock>
            <TextBlock Grid.Column="2" Grid.Row="2"
                       Text="{x:Static properties:Resources.HelpLog}"/>
            <TextBlock Grid.Column="1" Grid.Row="3"
                       Text="/lang:&lt;clsid&gt;"/>
            <TextBlock Grid.Column="2" Grid.Row="3"
                       Text="{x:Static properties:Resources.HelpLanguage}"/>
            <TextBlock Grid.Column="1" Grid.Row="4"
                       Text="/layout"/>
            <TextBlock Grid.Column="2" Grid.Row="4"
                       Text="{x:Static properties:Resources.HelpLayout}"/>
            <TextBlock Grid.Column="1" Grid.Row="5"
                       Text="/modify"/>
            <TextBlock Grid.Column="2" Grid.Row="5"
                       Text="{x:Static properties:Resources.HelpModify}"/>
            <TextBlock Grid.Column="1" Grid.Row="6"
                       Text="/repair"/>
            <TextBlock Grid.Column="2" Grid.Row="6"
                       Text="{x:Static properties:Resources.HelpRepair}"/>
            <TextBlock Grid.Column="1" Grid.Row="7"
                       Text="/uninstall"/>
            <TextBlock Grid.Column="2" Grid.Row="7"
                       Text="{x:Static properties:Resources.HelpUninstall}"/>
            <TextBlock Grid.Column="1" Grid.Row="8"
                       Text="/passive"/>
            <TextBlock Grid.Column="2" Grid.Row="8"
                       Text="{x:Static properties:Resources.HelpPassive}"/>
            <TextBlock Grid.Column="1" Grid.Row="9">
                /q /quiet
                <LineBreak/>
                /s /silent
            </TextBlock>
            <TextBlock Grid.Column="2" Grid.Row="9"
                       Text="{x:Static properties:Resources.HelpQuiet}"/>
            <TextBlock Grid.Column="1" Grid.Row="10"
                       Text="/promptrestart"/>
            <TextBlock Grid.Column="2" Grid.Row="10"
                       Text="{x:Static properties:Resources.HelpPromptRestart}"/>
            <TextBlock Grid.Column="1" Grid.Row="11"
                       Text="/norestart"/>
            <TextBlock Grid.Column="2" Grid.Row="11"
                       Text="{x:Static properties:Resources.HelpNoRestart}"/>
            <TextBlock Grid.Column="1" Grid.Row="12"
                       Text="/forcerestart"/>
            <TextBlock Grid.Column="2" Grid.Row="12"
                       Text="{x:Static properties:Resources.HelpForceRestart}"/>
        </Grid>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Layout}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="6*"/>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="*"/>
                <RowDefinition Height="*"/>
            </Grid.RowDefinitions>
            <TextBlock Grid.Column="1" Grid.Row="1"
                       Text="{x:Static properties:Resources.DownloadLocation}"
                       Foreground="{DynamicResource ForegroundBrush}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
            <TextBox Grid.Column="1" Grid.Row="2"
                     Text="{Binding LayoutFolder, Mode=TwoWay}"
                     Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
            <Button Grid.Column="2" Grid.Row="2"
                    Content="{x:Static properties:Resources.Browse}"
                    Command="{Binding Browse}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Padding="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.SemiBoldPadding)}"
                    MinWidth="0" MinHeight="0"/>
        </Grid>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Visible"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Primary}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="6*"/>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="*"/>
                <RowDefinition Height="*"/>
            </Grid.RowDefinitions>
            <TextBlock Grid.Column="1" Grid.Row="1"
                       Text="{x:Static properties:Resources.InstallTo}"
                       Foreground="{DynamicResource ForegroundBrush}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
            <TextBox Grid.Column="1" Grid.Row="2"
                     Text="{Binding InstallFolder, Mode=TwoWay}"
                     Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
            <Button Grid.Column="2" Grid.Row="2"
                    Content="{x:Static properties:Resources.Browse}"
                    Command="{Binding Browse}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Padding="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.SemiBoldPadding)}"
                    MinWidth="0" MinHeight="0"/>
            <TextBlock Grid.Column="1" Grid.Row="4"
                       Foreground="{DynamicResource ForegroundBrush}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}">
                <Run Text="{x:Static properties:Resources.LicenseTextBeforeLink}"/>
                <Hyperlink NavigateUri="http://elysium.asvishnyakov.com/License.cshtml#header"
                           Command="{Binding License}">
                    <Run Text="{x:Static properties:Resources.LicenseLink}"/>
                </Hyperlink>
                <Run Text="{x:Static properties:Resources.LicenseTextAfterLink}"/>
            </TextBlock>
            <CheckBox Grid.Column="1" Grid.Row="5"
                      IsChecked="{Binding Agreement, Mode=TwoWay}"
                      Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}">
                <TextBlock Text="{x:Static properties:Resources.Agreement}"/>
            </CheckBox>
        </Grid>
        <Grid Grid.Row="1"
              Grid.IsSharedSizeScope="True"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Features}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="7*"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition SharedSizeGroup="SelectAllGroup"/>
                <RowDefinition SharedSizeGroup="SelectAllGroup"/>
                <RowDefinition Height="*"/>
            </Grid.RowDefinitions>
            <ItemsControl Grid.Column="1" Grid.Row="1"
                          ItemsSource="{Binding Features, Mode=OneWay}">
                <ItemsControl.ItemTemplate>
                    <DataTemplate>
                        <CheckBox DataContext="{Binding Path=.}"
                                  IsEnabled="{Binding Path=Key.AllowAbsent, Mode=OneWay}"
                                  IsChecked="{Binding Path=Value, Mode=TwoWay}"
                                  Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}">
                            <TextBlock Text="{Binding Path=Key.Name, Mode=OneWay, Converter={StaticResource FeatureIDToFeatureTitleConverter}}"/>
                        </CheckBox>
                    </DataTemplate>
                </ItemsControl.ItemTemplate>
            </ItemsControl>
            <CheckBox Grid.Column="1" Grid.Row="3"
                      IsChecked="{Binding IsAllFeaturesSelected, Mode=TwoWay}"
                      IsThreeState="True"
                      Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}">
                <TextBlock Text="{x:Static properties:Resources.SelectAll}"/>
            </CheckBox>
        </Grid>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Progress}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="7*"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="2*"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="*"/>
                <RowDefinition Height="2*"/>
            </Grid.RowDefinitions>
            <TextBlock Grid.Column="1" Grid.Row="1"
                       Text="{x:Static properties:Resources.Applying}"
                       Foreground="{DynamicResource ForegroundBrush}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
            <metro:ProgressBar Grid.Column="1" Grid.Row="2"
                               Minimum="0" Value="{Binding Path=Progress, Mode=OneWay}" Maximum="100"
                               Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
            <TextBlock Grid.Column="1" Grid.Row="3"
                       Text="{Binding Message}"
                       TextTrimming="WordEllipsis"
                       Foreground="{DynamicResource ForegroundBrush}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
        </Grid>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Downgrade}">
            <TextBlock Text="{x:Static properties:Resources.Downgrade}"
                       Foreground="{DynamicResource ForegroundBrush}"
                       FontSize="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.ContentFontSize)}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                       HorizontalAlignment="Center" VerticalAlignment="Center"/>
        </Grid>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Final}">
            <TextBlock Text="{x:Static properties:Resources.Successful}"
                       Foreground="{DynamicResource ForegroundBrush}"
                       FontSize="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.ContentFontSize)}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                       HorizontalAlignment="Center" VerticalAlignment="Center"/>
        </Grid>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Canceled}">
            <TextBlock Text="{x:Static properties:Resources.Canceled}"
                       Foreground="{DynamicResource ForegroundBrush}"
                       FontSize="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.ContentFontSize)}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                       HorizontalAlignment="Center" VerticalAlignment="Center"/>
        </Grid>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Failed}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="Auto"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="*"/>
            </Grid.RowDefinitions>
            <TextBlock Grid.Column="1" Grid.Row="1"
                       Text="{x:Static properties:Resources.Failed}"
                       Foreground="{DynamicResource ForegroundBrush}"
                       FontSize="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.ContentFontSize)}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
            <TextBlock Grid.Column="1" Grid.Row="2"
                       Text="{Binding Message}"
                       Foreground="{DynamicResource ForegroundBrush}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
        </Grid>
        <Grid Grid.Row="1"
              designmode:Design.Visibility="Collapsed"
              Visibility="{Binding CurrentScreen, Mode=OneWay, Converter={StaticResource ScreenToVisibilityConverter}, ConverterParameter=Reboot}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="7*"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="*"/>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="*"/>
            </Grid.RowDefinitions>
            <TextBlock Grid.Column="1" Grid.Row="1"
                       Text="{x:Static properties:Resources.Reboot}"
                       Foreground="{DynamicResource ForegroundBrush}"
                       FontSize="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.ContentFontSize)}"
                       Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
            <RadioButton Grid.Column="1" Grid.Row="2"
                         Content="{x:Static properties:Resources.RebootNow}"
                         GroupName="Reboot"
                         IsChecked="{Binding IsReboot, Mode=TwoWay}"
                         IsThreeState="False"
                         Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
            <RadioButton Grid.Column="1" Grid.Row="3"
                         Content="{x:Static properties:Resources.RebootLater}"
                         GroupName="Reboot"
                         IsThreeState="False"
                         Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"/>
        </Grid>
        <Grid Grid.Row="2"
              Grid.IsSharedSizeScope="True">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition SharedSizeGroup="AutoSizeButton"/>
                <ColumnDefinition SharedSizeGroup="AutoSizeButton"/>
                <ColumnDefinition SharedSizeGroup="AutoSizeButton"/>
            </Grid.ColumnDefinitions>
            <Button Grid.Column="1"
                    Content="{x:Static properties:Resources.Modify}"
                    Command="{Binding Modify}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Visibility="{Binding ShowModify, Converter={StaticResource BooleanToVisibilityConverter}}"/>
            <Button Grid.Column="2"
                    Content="{x:Static properties:Resources.Back}"
                    Command="{Binding Back}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Visibility="{Binding ShowBack, Converter={StaticResource BooleanToVisibilityConverter}}"/>
            <Button Grid.Column="2"
                    Content="{x:Static properties:Resources.Repair}"
                    Command="{Binding Repair}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Visibility="{Binding ShowRepair, Converter={StaticResource BooleanToVisibilityConverter}}"/>
            <Button Grid.Column="3"
                    Content="{x:Static properties:Resources.Next}"
                    Command="{Binding Next}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Visibility="{Binding ShowNext, Converter={StaticResource BooleanToVisibilityConverter}}"/>
            <Button Grid.Column="3"
                    Content="{x:Static properties:Resources.Install}"
                    Command="{Binding Install}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Visibility="{Binding ShowInstall, Converter={StaticResource BooleanToVisibilityConverter}}"/>
            <Button Grid.Column="3"
                    Content="{x:Static properties:Resources.Download}"
                    Command="{Binding Download}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Visibility="{Binding ShowDownload, Converter={StaticResource BooleanToVisibilityConverter}}"/>
            <Button Grid.Column="3"
                    Content="{x:Static properties:Resources.Cancel}"
                    Command="{Binding Cancel}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Visibility="{Binding ShowCancel, Converter={StaticResource BooleanToVisibilityConverter}}"/>
            <Button Grid.Column="3"
                    Content="{x:Static properties:Resources.Finish}"
                    Command="{Binding Finish}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Visibility="{Binding ShowFinish, Converter={StaticResource BooleanToVisibilityConverter}}"/>
            <Button Grid.Column="3"
                    Content="{x:Static properties:Resources.Uninstall}"
                    Command="{Binding Uninstall}"
                    Margin="{Binding RelativeSource={RelativeSource Self}, Path=(params:General.BoldPadding)}"
                    Visibility="{Binding ShowUninstall, Converter={StaticResource BooleanToVisibilityConverter}}"/>
        </Grid>
    </Grid>
</metro:Window>